package com.auto.sns.core.service;

import java.util.List;

import com.auto.sns.core.domain.SnsCoreActivity;
import com.auto.sns.core.domain.SnsCoreHyperlink;
import com.auto.sns.core.domain.SnsCoreTopic;
import com.auto.sns.core.domain.SnsCoreUserRelaMap;
import com.auto.sns.core.domain.SnsCoreVote;
import com.system.common.Page;

public interface ISnsCoreInfoService {
	
	/**
	 * 保存活动信息
	 * @param snsCoreActivity
	 * @return
	 * @throws Exception
	 */
	boolean saveOrUpdateSnsCoreActivity(SnsCoreActivity snsCoreActivity) throws Exception;
	
	/**
	 * 更新活动回复数
	 * @param scacGuid
	 * @return
	 * @throws Exception
	 */
	boolean updateReplyNumSnsCoreActivity(String scacGuid) throws Exception;
	
	/**
	 * 更新活动推荐数
	 * @param scacGuid
	 * @return
	 * @throws Exception
	 */
	boolean updateRecommendNumSnsCoreActivity(String scacGuid) throws Exception;
	
	/**
	 * 更新活动关注数
	 * @param scacGuid
	 * @return
	 * @throws Exception
	 */
	boolean updateFavoriteNumSnsCoreActivity(String scacGuid) throws Exception;
	
	/**
	 * 查询活动列表 分页
	 * @param snsCoreActivity
	 * @param page
	 * @return
	 * @throws Exception
	 */
	List<SnsCoreActivity> queryPageListSnsCoreActivity(SnsCoreActivity snsCoreActivity, Page page) throws Exception;
	
	/**
	 * 保存链接信息
	 * @param snsCoreHyperlink
	 * @return
	 * @throws Exception
	 */
	boolean saveOrUpdateSnsCoreHyperlink(SnsCoreHyperlink snsCoreHyperlink) throws Exception;
	
	boolean updateReplyNumSnsCoreHyperlink(String schyGuid) throws Exception;
	
	boolean updateRecommendNumSnsCoreHyperlink(String schyGuid) throws Exception;
	
	boolean updateFavoriteNumSnsCoreHyperlink(String schyGuid) throws Exception;
	
	List<SnsCoreHyperlink> queryPageListSnsCoreHyperlink(SnsCoreHyperlink snsCoreHyperlink, Page page) throws Exception;
	
	/**
	 * 保存话题信息
	 * @param snsCoreTopic
	 * @return
	 * @throws Exception
	 */
	boolean saveOrUpdateSnsCoreTopic(SnsCoreTopic snsCoreTopic) throws Exception;
	
	boolean updateReplyNumSnsCoreTopic(String sctoGuid) throws Exception;
	
	boolean updateRecommendNumSnsCoreTopic(String sctoGuid) throws Exception;
	
	boolean updateFavoriteNumSnsCoreTopic(String sctoGuid) throws Exception;
	
	List<SnsCoreTopic> queryPageListSnsCoreTopic(SnsCoreTopic snsCoreTopic, Page page) throws Exception;
	
	/**
	 * 保存投票信息
	 * @param snsCoreVote
	 * @return
	 * @throws Exception
	 */
	boolean saveOrUpdateSnsCoreVote(SnsCoreVote snsCoreVote) throws Exception;
	
	boolean updateReplyNumSnsCoreVote(String scvoGuid) throws Exception;
	
	boolean updateRecommendNumSnsCoreVote(String scvoGuid) throws Exception;
	
	boolean updateFavoriteNumSnsCoreVote(String scvoGuid) throws Exception;
	
	List<SnsCoreVote> queryPageListSnsCoreVote(SnsCoreVote snsCoreVote, Page page) throws Exception;
	
	/**
	 * 保存好友关系信息
	 * @param snsCoreUserRelaMap
	 * @return
	 * @throws Exception
	 */
	boolean saveOrUpdateSnsCoreUserRelaMap(SnsCoreUserRelaMap snsCoreUserRelaMap) throws Exception;
	
	List<SnsCoreUserRelaMap> queryPageListSnsCoreUserRelaMap(SnsCoreUserRelaMap snsCoreUserRelaMap, Page page) throws Exception;
	

}
